package com.qzsoft.zhjd.asphalt.modules.asphaltmatch.service;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

import com.baomidou.mybatisplus.extension.service.IService;
import com.qzsoft.zhjd.asphalt.modules.asphaltmatch.dto.AsphaltMatchHotForAppDto;
import com.qzsoft.zhjd.asphalt.modules.asphaltmatch.entity.AsphaltMatchHotEntity;

/**
 * @ClassName AsphaltMatchHotService
 * @Description 生产配比热料筛分级配业务接口
 * @author linhuawei
 * @since 2021-11-22
 */
public interface AsphaltMatchHotService extends IService<AsphaltMatchHotEntity> {

    /**
     * @Title listByMatchId
     * @Description 根据配比主键获取筛分级配列表
     * @param matchId 配比主键
     * @return 筛分级配列表
     */
    public List<AsphaltMatchHotEntity> listByMatchId(Serializable matchId);

    /**
     * @Title infoForApp
     * @Description 移动应用获取热料筛分数据
     * @param matchId 配方主键
     * @return 热料筛分数据
     */
    public AsphaltMatchHotForAppDto infoForApp(String matchId);

    /**
     * @Title save
     * @Description 添加热料筛分级配
     * @param list    要添加的数据
     * @param matchId 配比主键
     */
    public void save(List<AsphaltMatchHotEntity> list, String matchId);

    /**
     * @Title deleteByMatchId
     * @Description 根据配比主键删除筛分级配
     * @param matchId 配比主键
     */
    public void deleteByMatchId(Serializable matchId);

    /**
     * @Title getTargetMap
     * @Description 获取目标级配数据
     * @param matchId 配比主键
     * @return 目标级配数据
     */
    public Map<String, BigDecimal> getTargetMap(String matchId);

}
